feat(agent): encode myRsvp status semantics - #69
Conversation
Expose authoritative myRsvp meanings through events.list schema metadata and teach agent-facing docs that SENT is an inbound invitation awaiting a response. Preserve the raw runtime enum and host precedence.\n\nCloses #68
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThe PR adds structured ChangesRSVP semantics contract
Estimated code review effort: 2 (Simple) | ~15 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR strengthens the agent-facing contract for events list by adding machine-readable RSVP semantics to schema events.list and aligning docs/skills around the canonical meaning of myRsvp, especially clarifying that SENT is an inbound invite awaiting the authenticated user’s RSVP, and that isHost === true takes precedence for categorization.
Changes:
- Added an
outputcontract toschema events.listthat enumerates meanings/categories for eachmyRsvpvalue and encodes categorization precedence (isHost === truefirst). - Updated agent/user documentation (AGENTS.md, README, bundled skill) to consistently describe
SENTas inbound and to describe host-precedence categorization. - Added a test suite that enforces the schema contract and verifies runtime output remains backward-compatible (no derived RSVP fields added).
Show a summary per file
| File | Description |
|---|---|
tests/rsvp-semantics.test.js |
Adds contract tests ensuring schema output includes RSVP semantics and that runtime summaries preserve raw myRsvp. |
src/commands/schema.ts |
Extends command schema entries to include optional machine-readable output contracts and adds the events.list RSVP semantics metadata. |
skills/partiful-events/SKILL.md |
Updates the bundled events skill documentation to teach the canonical RSVP semantics and host-first categorization. |
README.md |
Replaces the brief RSVP description with a table + explicit warning about SENT and host precedence. |
AGENTS.md |
Adds the canonical RSVP semantics section for agents and updates the code conventions note to reflect TypeScript/tsx usage. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 5/5 changed files
- Comments generated: 0
- Review effort level: Low
Summary
events.list.outputmetadata for everymyRsvpvalueSENTas an inbound invitation awaiting the authenticated user's RSVP, not an outbound actionisHost === trueas the highest-priority Hosting categorizationAGENTS.md, README, and bundledpartiful-eventsskill with the canonical mappingmyRsvpruntime output with no derived field or behavior changeCloses #68
TDD evidence
nullcontract expectation separately: observed 1 expected failureVerification
npm test— 216 passed / 6 skippednpm run typecheck/npx tsc --noEmitgit diff --check./bin/partiful schema events.listinspectionnpm pack --dry-runconfirms README, schema source, and bundled event skill ship in the packageCompatibility
events liststill returns the raw Partiful enum. NomyRsvpCategoryormyRsvpLabelfield is added. Existing consumers remain unchanged; agents can querypartiful schema events.listfor authoritative meanings.Review note
The local independent-review delegation and Claude Code fallback both failed before reading the diff due a provider-level
model_not_supportedHTTP 400. Local tests and checks above passed; GitHub Copilot review is requested on this PR as the independent remote gate.Summary by CodeRabbit
Documentation
SENTrepresents an inbound invitation awaiting a response.goingandmaybeare aggregate guest counts, not personal RSVP states.New Features